home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World's Largest Collection of Windows Software
/
The World's Largest Collection of Windows Software - Disc 1.iso
/
connect
/
_j2
/
wvnsc926
/
rcs
/
wvglob.h
< prev
next >
Wrap
C/C++ Source or Header
|
1994-09-21
|
91KB
|
3,406 lines
head 1.59;
branch ;
access ;
symbols V80:1.13 V76d:1.2;
locks ; strict;
comment @ * @;
1.59
date 94.09.18.22.46.08; author jcooper; state Exp;
branches ;
next 1.58;
1.58
date 94.09.18.00.14.53; author jcooper; state Exp;
branches ;
next 1.57;
1.57
date 94.09.06.12.46.21; author brydon; state Exp;
branches ;
next 1.56;
1.56
date 94.09.02.19.16.32; author martin; state Exp;
branches ;
next 1.55;
1.55
date 94.08.24.18.40.15; author mrr; state Exp;
branches ;
next 1.54;
1.54
date 94.08.24.18.00.29; author jcooper; state Exp;
branches ;
next 1.53;
1.53
date 94.08.23.23.15.34; author martin; state Exp;
branches ;
next 1.52;
1.52
date 94.08.11.02.25.59; author dumoulin; state Exp;
branches ;
next 1.51;
1.51
date 94.08.11.00.09.17; author jcooper; state Exp;
branches ;
next 1.50;
1.50
date 94.08.04.05.49.30; author dumoulin; state Exp;
branches ;
next 1.49;
1.49
date 94.07.28.21.56.32; author rushing; state Exp;
branches ;
next 1.48;
1.48
date 94.07.26.18.39.45; author dumoulin; state Exp;
branches ;
next 1.47;
1.47
date 94.07.26.16.10.51; author gardnerd; state Exp;
branches ;
next 1.46;
1.46
date 94.07.25.22.41.22; author pearse_w_r; state Exp;
branches ;
next 1.45;
1.45
date 94.07.25.18.51.48; author jcooper; state Exp;
branches ;
next 1.44;
1.44
date 94.06.30.16.37.04; author dumoulin; state Exp;
branches ;
next 1.43;
1.43
date 94.06.08.21.01.45; author gardnerd; state Exp;
branches ;
next 1.42;
1.42
date 94.06.06.22.06.13; author gardnerd; state Exp;
branches ;
next 1.41;
1.41
date 94.06.06.21.23.21; author mrr; state Exp;
branches ;
next 1.40;
1.40
date 94.06.01.19.00.00; author gardnerd; state Exp;
branches ;
next 1.39;
1.39
date 94.05.23.19.51.51; author rushing; state Exp;
branches ;
next 1.38;
1.38
date 94.05.23.18.37.00; author jcooper; state Exp;
branches ;
next 1.37;
1.37
date 94.05.02.20.32.55; author rushing; state Exp;
branches ;
next 1.36;
1.36
date 94.03.01.19.10.19; author rushing; state Exp;
branches ;
next 1.35;
1.35
date 94.02.24.21.28.49; author jcoop; state Exp;
branches ;
next 1.34;
1.34
date 94.02.16.20.59.17; author rushing; state Exp;
branches ;
next 1.33;
1.33
date 94.02.04.02.19.12; author rushing; state Exp;
branches ;
next 1.32;
1.32
date 94.01.24.17.39.47; author jcoop; state Exp;
branches ;
next 1.31;
1.31
date 94.01.17.21.54.58; author jcoop; state Exp;
branches ;
next 1.30;
1.30
date 94.01.12.19.25.59; author mrr; state Exp;
branches ;
next 1.29;
1.29
date 94.01.05.22.36.43; author mrr; state Exp;
branches ;
next 1.28;
1.28
date 93.12.08.20.21.15; author dumoulin; state Exp;
branches ;
next 1.27;
1.27
date 93.12.08.01.29.07; author rushing; state Exp;
branches ;
next 1.26;
1.26
date 93.08.25.18.55.19; author mbretherton; state Exp;
branches ;
next 1.25;
1.25
date 93.08.18.21.49.21; author rushing; state Exp;
branches ;
next 1.24;
1.24
date 93.08.17.21.48.44; author dumoulin; state Exp;
branches ;
next 1.23;
1.23
date 93.08.05.20.06.07; author jcoop; state Exp;
branches ;
next 1.22;
1.22
date 93.07.13.16.03.04; author riordan; state Exp;
branches ;
next 1.21;
1.21
date 93.07.09.19.13.36; author rushing; state Exp;
branches ;
next 1.20;
1.20
date 93.07.06.21.09.09; author cnolan; state Exp;
branches ;
next 1.19;
1.19
date 93.06.28.17.52.17; author rushing; state Exp;
branches ;
next 1.18;
1.18
date 93.06.25.20.27.10; author dumoulin; state Exp;
branches ;
next 1.17;
1.17
date 93.06.22.19.08.56; author rushing; state Exp;
branches ;
next 1.16;
1.16
date 93.06.22.16.43.58; author bretherton; state Exp;
branches ;
next 1.15;
1.15
date 93.06.22.16.14.21; author rushing; state Exp;
branches ;
next 1.14;
1.14
date 93.06.14.17.05.16; author rushing; state Exp;
branches ;
next 1.13;
1.13
date 93.06.11.00.11.26; author rushing; state Exp;
branches ;
next 1.12;
1.12
date 93.06.10.18.25.40; author rushing; state Exp;
branches ;
next 1.11;
1.11
date 93.06.01.18.23.17; author rushing; state Exp;
branches ;
next 1.10;
1.10
date 93.05.29.03.32.30; author rushing; state Exp;
branches ;
next 1.9;
1.9
date 93.05.28.17.32.11; author rushing; state Exp;
branches ;
next 1.8;
1.8
date 93.05.28.17.18.00; author rushing; state Exp;
branches ;
next 1.7;
1.7
date 93.05.24.23.57.22; author rushing; state Exp;
branches ;
next 1.6;
1.6
date 93.05.18.22.10.45; author rushing; state Exp;
branches ;
next 1.5;
1.5
date 93.05.13.20.00.38; author rushing; state Exp;
branches ;
next 1.4;
1.4
date 93.05.13.16.17.45; author rushing; state Exp;
branches ;
next 1.3;
1.3
date 93.03.30.20.49.30; author DUMOULIN; state Exp;
branches ;
next 1.2;
1.2
date 93.03.30.17.08.12; author rushing; state Exp;
branches ;
next 1.1;
1.1
date 93.02.16.20.54.42; author rushing; state Exp;
branches ;
next ;
desc
@winvn version 0.76 placed into RCS
@
1.59
log
@More cleanup for 92.6. Added IsBusy to TypTextBlock
@
text
@/*---- Module WVGLOB.H -------------------------------------------- */
/* WVGLOB.H contains all the global types and variables for WinVN. */
/* Stylistically, this should probably be separated into several */
/* header files, but this is what you've got for now. */
/* cf WVDOC.C -- it describes some of these structures. */
/*
* $Id: wvglob.h 1.58 1994/09/18 00:14:53 jcooper Exp $
*/
#ifdef _WIN32
#ifndef WIN32
#define WIN32
#endif
#endif
#ifdef WIN32
#ifndef _WIN32
#define _WIN32
#endif
#endif
/* these are supposed be defined in windowsx.h, but they aren't in mine! */
#ifndef GET_WM_COMMAND_CMD
#ifdef WIN32
#define GET_WM_COMMAND_CMD(wp, lp) HIWORD(wp)
#define GET_WM_COMMAND_ID(wp, lp) LOWORD(wp)
#define GET_WM_COMMAND_HWND(wp, lp) (HWND)lp)
#else
#define GET_WM_COMMAND_CMD(wp, lp) HIWORD(lp)
#define GET_WM_COMMAND_ID(wp, lp) (wp)
#define GET_WM_COMMAND_HWND(wp, lp) ((HWND)LOWORD(lp))
#endif
#endif
#ifdef WIN32
#define huge far
#endif
#define BUFSIZE 1024
#define TEMPBUFSIZE 1240
#define MAXHEADERLINE 256
#define MAXFINDSTRING 80
#define MAXDIALOGSTRING 255
#define MAXFILENAME 75
#define MAXCHARS 80
#define MAXLINES 24
/* this has been increased for XOVER - some lines are *very* long */
#define MAXCOMMLINE 1536
#define MAXINTERNALLINE 180
#define MAXOUTLINE 255
#define MAXPOSTLENGTH 60000 /* max length for a posting/mail edit window */
#define MAXBOUNDARYLEN 70 /* max length for MIME boundary */
#define MAXNEWGROUPSASK 200 /* limit of groups in newgroups dialog box */
#include <time.h>
#include <commdlg.h>
typedef long TypLineID;
typedef struct structtextselect
{
int LineNum; /* Line number when selecting text -- Line Ord */
int CharNum; /* Character number when selecting text */
/* The 1st LineNum in the Doc and the 1st CharNum in the line are 0 */
}
TextSelect;
typedef struct structdoc
{
HANDLE hFirstBlock; /* handle to first textblock in doc. */
HANDLE hLastBlock; /* unused. */
unsigned int TotalLines; /* total # of lines in doc. */
unsigned int LongestLine; /* # of bytes in the longest line of doc */
unsigned int HeaderLines; /* total number of lines in header of doc
(incl. blank line) */
unsigned int ActiveLines; /* # of selected or otherwise active lines */
unsigned int CountedLines; /* # of counted lines, as in subscr. groups */
unsigned int BlockSize; /* # of bytes in a textblock */
unsigned int SplitSize; /* textblock split point in bytes */
HANDLE hCurAddBlock; /* hBlock to point at which to add lines. */
unsigned int AddOffset; /* offset in bytes for point to add lines */
TypLineID AddLineID; /* LineID of place to add lines. */
HANDLE hCurTopScBlock; /* hBlock of current top line of window */
unsigned int TopScOffset;
TypLineID TopScLineID;
unsigned int TopLineOrd; /* ordinal in doc of top line in window */
HANDLE hLastSeenBlock;
unsigned int LastSeenOffset;
TypLineID LastSeenLineID;
HANDLE hFindBlock; /* location of place to start next search */
unsigned int FindOffset; /* for "SearchStr" */
TypLineID FindLineID;
unsigned int FindTextOffset;
char SearchStr[MAXFINDSTRING]; /* Search string for current search */
unsigned int ScXOffset; /* # of chars offset for horizontal scroll */
unsigned int ScXChars; /* # of chars/line for current window size */
unsigned int ScYLines; /* # of lines that fit in current window */
unsigned int ScXWidth; /* current size of client area of window */
unsigned int ScYHeight;
HWND hDocWnd;
struct structdoc *ParentDoc; /* pointer to parent document */
HANDLE hParentBlock; /* points to line in parent doc */
unsigned int ParentOffset; /* that corresponds to/describes this */
TypLineID ParentLineID; /* document */
unsigned int OffsetToText;
BOOL InUse; /* TRUE if this TypDoc in use. */
int DocType; /* DOCTYPE_xxx */
BOOL TextSelected; /* Indicates text selected */
TextSelect BeginSelect; /* Line and Char where selection began */
TextSelect EndSelect; /* Line and Char where selection ended */
}
TypDoc;
typedef struct structblock
{
HANDLE hPrevBlock; /* handle of previous block, or 0 */
HANDLE hNextBlock; /* handle of next block in document, or 0 */
HANDLE hCurBlock; /* handle of this block */
int LWAp1; /* # of used data bytes in block, inc header */
int NumLines; /* # of lines in this block */
int NumActiveLines; /* # of active lines in this block. */
TypDoc *OwnerDoc; /* pointer to document this block is in. */
int eob; /* end-of-block; must be just before 1st line. */
/* Text lines */
/* Another EOB marker */
}
TypBlock;
typedef struct structline
{
int length; /* Total # of bytes in line, all-inclusive */
TypLineID LineID; /* Unique identifier for this line. */
int active; /* =1 if line should be displayed, else 0 */
/* Bytes of text */
/* Another copy of length */
}
TypLine;
typedef struct structtext
{
int NameLen; /* # of bytes of text */
}
TypText;
typedef struct structgroup
{
char Subscribed; /* =TRUE if subscribed to this group. */
char Selected; /* =TRUE if selected */
char Determined; /* =TRUE if group info has been retrieved */
int NameLen; /* # of bytes in group name */
TypDoc *SubjDoc; /* points to doc containing subjs */
unsigned long ServerEstNum; /* est # of arts in server */
unsigned long ServerFirst; /* # of first art that server has. */
unsigned long ServerLast; /* # of last art that server has. */
unsigned long HighestPrevSeen; /* # of highest art server had in last */
/* session, from "s<num>" newsrc field */
HANDLE header_handle; /* handle to global block of header array mem */
HANDLE thread_handle; /* handle to global block of thread ind. pointers */
long int total_headers; /* total # of headers in array */
unsigned int nRanges; /* # of TypRanges describing seen arts */
/* Name of group *//* name of group, zero-terminated */
/* Ranges of articles seen *//* array of TypRanges, of seen articles */
}
TypGroup;
typedef struct structarticle
{
unsigned long Number; /* Server's number for this article */
char Seen; /* =TRUE if article seen */
char Selected; /* =TRUE if article selected */
TypDoc *ArtDoc; /* points to doc with actual article */
int NameLen; /* # of bytes in subject line */
/* Subject line of article */
}
TypArticle;
/* the size of this struct *must* be a power of two for win16. 'huge' */
/* arrays require this. */
/* (+ 1 1 1 4 2 4 105 74 30 30 4) => 256 */
#define HEADER_SUBJECT_LENGTH 105
#define HEADER_FROM_LENGTH 74
#define HEADER_MESSAGE_ID_LENGTH 30
#define HEADER_REFERENCES_LENGTH 30
/* Offset used to calculate offset for LongestLine */
#define ARTICLE_SUBJECT_OFFSET 40
#define GROUP_NAME_OFFSET 10
typedef struct
{
char Seen;
char Selected;
char thread_depth;
char subject[HEADER_SUBJECT_LENGTH];
unsigned long number;
unsigned int lines;
/* char date[9]; JD 6/25/93 */
time_t date;
char from[HEADER_FROM_LENGTH];
char message_id[HEADER_MESSAGE_ID_LENGTH];
char references[HEADER_REFERENCES_LENGTH];
TypDoc *ArtDoc;
}
TypHeader;
typedef TypHeader huge *header_p;
typedef long huge *thread_array;
typedef thread_array huge *thread_array_p;
typedef char huge *char_p;
typedef struct structrange
{
long int First;
long int Last;
}
TypRange;
/* TypMRRFile is used to describe a file; I use it because Windows */
/* doesn't provide much in the way of disk I/O support. */
typedef struct structMRRfile
{
HFILE hFile; /* handle to file */
OFSTRUCT of;
char buf[BUFSIZE]; /* my I/O buffer. */
HANDLE hthis; /* handle to this structure */
int bufidx; /* Index to next place in buf */
int bytesread; /* for reads, # of bytes read in last read */
int mode; /* mode in which to open file. */
int eofflag; /* whether we have reached EOF (read) */
}
TypMRRFile;
#define CtoX(c) (c*CharWidth + SideSpace)
#define LtoY(l) (l*LineHeight + TopSpace)
#define EDITID 1 /* ID of edit box, to identify for return values */
#define MAXMEMONAME 15 /* Number of chars in memo name */
#define MEMONAMECHARS (MAXMEMONAME+2)
#define MAXVIEWS 10
#define END_OF_BLOCK (-1)
#define BLOCK_SIZE 4096
/* RangeOffset gives the number of bytes from the beginning of
* a Group structure to the first Range field, given the length
* of the name entry.
*/
#define RangeOffset(nlen) (((nlen+2)/2)*2 + sizeof(TypGroup))
#ifdef WINMAIN
#define DEF
#else
#define DEF extern
#endif
DEF TypDoc NetDoc;
DEF TypDoc DebugCommDoc;
#define MRR_SCROLL_LINEUP 0
#define MRR_SCROLL_LINEDOWN 1
#define MRR_SCROLL_PAGEUP 2
#define MRR_SCROLL_PAGEDOWN 3
/* This structure maps between keystrokes and mouse events.
* From an idea on p. 137 of Charles Petzold's book.
* If you change the definition, be sure to update NUMKEYS.
*/
#define NUMKEYS 6
#ifndef MAC
DEF struct
{
WORD wVirtKey;
int CtlState;
int iMessage;
WORD wRequest;
}
key2scroll[NUMKEYS]
#ifdef WINMAIN
=
{
VK_PRIOR, 0, WM_VSCROLL, SB_PAGEUP,
VK_NEXT, 0, WM_VSCROLL, SB_PAGEDOWN,
VK_UP, 0, WM_VSCROLL, SB_LINEUP,
VK_DOWN, 0, WM_VSCROLL, SB_LINEDOWN,
VK_LEFT, 0, WM_HSCROLL, SB_LINEUP,
VK_RIGHT, 0, WM_HSCROLL, SB_LINEDOWN
}
#endif
;
#endif
DEF BOOL Initializing;
#define INIT_DONE 0
#define INIT_READING_NEWSRC 1
#define INIT_ESTAB_CONN 2
#define INIT_SCANNING_NETDOC 3
#define INIT_GETTING_LIST 4
#define INIT_NOT_CONNECTED 5
#define INIT_READY 6
#define MAXGROUPWNDS 4
#define MAXARTICLEWNDS 4
#define MAXPOSTWNDS 20
#define MAXMAILWNDS 20
DEF TypDoc GroupDocs[MAXGROUPWNDS];
DEF TypDoc ArticleDocs[MAXARTICLEWNDS];
DEF int NumGroupWnds;
DEF int NumArticleWnds;
typedef struct WndEditStruct
{
HWND hWnd;
HWND hWndEdit;
int dirty;
TypDoc *Doc;
}
WndEdit;
#define DT_CLEAN 0
#define DT_INITIALISING -1
#define DT_DIRTY 1
DEF WndEdit WndPosts[MAXPOSTWNDS];
DEF WndEdit WndMails[MAXMAILWNDS];
DEF int NumPostWnds;
DEF int NumMailWnds;
#define DOCTYPE_UNKNOWN 0
#define DOCTYPE_NET 1
#define DOCTYPE_GROUP 2
#define DOCTYPE_ARTICLE 4
#define DOCTYPE_POSTING 8
#define DOCTYPE_MAIL 16
/* Variables and constants for handling the FSA used to deal with */
/* talking to the NNTP server. */
DEF int CommState; /* current state in comm FSA */
DEF BOOL CommBusy; /* =TRUE if comm line busy interacting w/ server */
DEF BOOL CommDecoding; /* =TRUE if comm line busy decoding lines from server */
DEF WndEdit *PostEdit, *MailEdit; /* set to post/mail window during send */
DEF TypDoc *CommDoc; /* Document currently receiving lines from server */
DEF HWND CommWnd; /* Window containing details of document currently
talking to server */
DEF HWND hVerDlgList; /* Handle to info in the Version Dialog Box */
DEF char CommLineIn[MAXCOMMLINE]; /* current input line being built by FSA */
DEF char *CommLinePtr; /* pointer to next place to put char in CommLineIn */
DEF char *CommLineLWAp1; /* if we get this far, we're at end of buffer */
DEF char IgnoreCommCh; /* char to ignore when reading from server */
DEF char EOLCommCh; /* char that indicates end of line upon input */
DEF TypDoc *ActiveGroupDoc;
DEF TypDoc *ActiveArticleDoc;
#define MAXGROUPNAME 80
DEF char CurrentGroup[MAXGROUPNAME]; /* name of group currently selected on
server */
DEF BOOL UsingSocket; /* =TRUE if using PC/TCP rather than serial I/O */
DEF BOOL threadp;
DEF BOOL xoverp;
DEF BOOL force_xhdr;
#define MAXNNTPSIZE 40
DEF char NNTPHost[MAXNNTPSIZE];
DEF char NNTPService[MAXNNTPSIZE];
DEF char SMTPHost[MAXNNTPSIZE];
DEF char NNTPUserName[MAXNNTPSIZE];
DEF char NNTPPasswordEncrypted[2 * MAXNNTPSIZE];
DEF BOOL AuthReqPost; /* TRUE if we may not post at all unless authenticated */
DEF BOOL AuthReqMail; /* TRUE if we may not send mail unless authenticated */
DEF BOOL Authenticated /* TRUE if we've been authenticated by NNTP server */
#ifdef WINMAIN
= FALSE
#endif
;
/* This is the name that was successfully authenticated by the NNTP server.
* It might not be the same as NNTPUserName, if the user has changed the
* username since the beginning of the session.
*/
DEF char AuthenticatedName[MAXNNTPSIZE];
#define MAILLEN 256
DEF char MailAddress[MAILLEN];
DEF char ReplyTo[MAILLEN];
DEF char UserName[MAILLEN];
DEF char Organization[MAILLEN];
DEF char GenSockDLL[MAXFILENAME];
DEF int ConnectAtStartup;
/* States in the FSA that cracks input lines from the server. */
#define ST_NONE 0
#define ST_ESTABLISH_COMM 1
#define ST_GROUP_RESP 2
#define ST_XHDR_SUBJECT_START 3
#define ST_XHDR_SUBJECT_DATA 4
#define ST_IN_GROUP 5
#define ST_ARTICLE_RESP 6
#define ST_REC_ARTICLE_HEADER 65
#define ST_REC_ARTICLE 7
#define ST_POST_WAIT_PERMISSION 8
#define ST_POST_WAIT_END 9
#define ST_GROUP_REJOIN 10
#define ST_LIST_RESP 11
#define ST_LIST_GROUPLINE 12
#define ST_MAIL_WAIT_PERMISSION 13
#define ST_MAIL_WAIT_END 14
#define ST_CHECK_AUTHINFO_USERNAME 20
#define ST_CHECK_AUTHINFO_PASSWORD 21
#define ST_END_AUTHINFO 22
#define ST_XHDR_FROM_START 50
#define ST_XHDR_FROM_DATA 51
#define ST_XHDR_SUBJ_START 52
#define ST_XHDR_SUBJ_DATA 53
#define ST_XHDR_REF_START 54
#define ST_XHDR_REF_DATA 55
#define ST_XHDR_MID_START 56
#define ST_XHDR_MID_DATA 57
#define ST_XHDR_DATE_START 58
#define ST_XHDR_DATE_DATA 59
#define ST_XHDR_LINES_START 60
#define ST_XHDR_LINES_DATA 61
#define ST_XOVER_START 62
#define ST_XOVER_DATA 63
#define ST_XOVER_CHECK 64
#define ST_CLOSED_COMM 99
#define LFN_HELP "WINVN.HLP"
/* variables used in an ad hoc attempt to optimize updating of windows
* by the input cracking FSA. */
#define UPDATE_TITLE_FREQ 10
#define UPDATE_ART_FREQ 12
#define MAX_IMMEDIATE_UPDATE 2
#define STATUS_UPDATE_FREQ 20
DEF unsigned int RcvLineCount;
DEF unsigned int TimesWndUpdated;
DEF TypLineID NextLineID /* LineID to assign to next created line */
#ifdef WINMAIN
= 10664L
#endif
;
DEF HINSTANCE hInst;
DEF HWND hWndConf; /* handle to NetDoc window */
DEF HWND hWndSk;
DEF HWND hDosWnd;
DEF HWND hWndDebugComm; /* handle to Debug Comm window */
DEF HANDLE hAccel; /* handle to main accelerator table */
DEF MSG MainMsg; /* message returned from GetMessage */
DEF int CommDevice; /* comm device ID, if using serial I/O */
DEF char str[255]; /* general-purpose string buffer */
DEF HCURSOR hSaveCursor; /* handle to current cursor */
DEF HCURSOR hHourGlass; /* handle to hourglass cursor */
DEF int X, Y; /* last cursor position */
DEF int DragMouseAction; /* mouse action for dragging */
#define DRAG_NONE 0
#define DRAG_SELECT 1
#define DRAG_DESELECT 2
#define SEEN_SELECT 3
#define SEEN_DESELECT 4
DEF POINT ptCursor; /* x and y coordinates of cursor */
DEF DCB DCBComm;
#define MAXCOMMCHARS 40
DEF char szCommString[MAXCOMMCHARS]; /* string describing serial comm port */
DEF int xPos, yPos;
DEF int ViewNew;
DEF int NewArticleWindow;
DEF int SelectAll;
DEF int NViews;
DEF int DoList;
DEF int did_list;
DEF unsigned int article_threshold;
DEF int arts_to_retrieve;
DEF int savingArtIndex;
DEF int numArtsSaved;
DEF int nextBatchIndex; /* for batch post/mails */
DEF int ConfirmBatchOps;
DEF int ConfirmExit;
DEF int ConfirmReplyTo;
DEF int ShowUnsubscribed;
DEF int ShowReadArticles;
DEF int DebugComm;
DEF int ShowUnreadOnly;
DEF int SaveNewsrc;
DEF int SaveConfig;
DEF char LastArticleTextFind[MAXINTERNALLINE];
DEF char LastArticleHeaderFind[MAXINTERNALLINE];
DEF char LastGroupNameFind[MAXINTERNALLINE];
#define THREAD_COMPLETE 1
#define THREAD_INCOMPLETE 2
/* AskComm says whether to put up the communications dialog box
* upon starting up. Options are never, always, and yes, because
* this is the first time the program has been run.
*/
#define ASK_COMM_NEVER 0
#define ASK_COMM_ALWAYS 1
#define ASK_COMM_INITIAL 2
DEF int AskComm;
DEF BOOL ArticleFixedFont;
DEF BOOL FullNameFrom;
DEF int xScreen, yScreen;
DEF int CaptionHeight;
DEF HFONT hListFont; /* handle to font used in group/art lists */
DEF HFONT hFontArtNormal; /* handle to font used in Article window - normal
text mode. */
DEF HFONT hFontArtQuote; /* handle to font used in Article window -
comments == Italics. */
DEF HFONT hFontPrint; /* handle to font used for printing. */
DEF HFONT hFontPrintB; /* handle to font used for bold printing. */
DEF HFONT hFontPrintS; /* handle to font used for printing Subject line. */
DEF HFONT hFontPrintI; /* handle to font used for printing Quoted lines. */
DEF HFONT hStatusFont; /* handle to font used in status windows */
DEF int ListFontSize;
DEF int ArticleFontSize;
DEF int PrintFontSize;
DEF int StatusFontSize;
DEF char ListFontFace[32];
DEF char ListFontStyle[32];
DEF char ArticleFontFace[32];
DEF char ArticleFontStyle[32];
DEF char PrintFontFace[32];
DEF char StatusFontFace[32];
DEF char StatusFontStyle[32];
DEF int LineHeight, CharWidth; /* # of window units for list font */
DEF int ArtLineHeight, ArtCharWidth; /* # of windows units for article font */
DEF int StatusLineHeight, StatusCharWidth; /* # of window units for status font */
DEF int TopSpace, SideSpace; /* # of window units to leave at top and side */
/* of window (for aesthetic purposes) */
DEF int ArtTopSpace, ArtSideSpace; /* # of window units to leave at top and side */
DEF int StartPen; /* Similar to TopSpace; where to start pen 1st row */
DEF int ScreenYPixels; /* used in converting points to logical units */
DEF int PrinterYPixels; /* used in converting points to logical units */
DEF COLORREF OldTextColor, OldBkColor;
DEF COLORREF NetUnSubscribedColor; /* color to use for unsubscribed groups */
DEF COLORREF NetSubscribedColor; /* color to use for subscribed groups */
DEF COLORREF ArticleSeenColor; /* color to use for articles that have been seen */
DEF COLORREF ArticleUnSeenColor; /* color to use for articles that have not been seen */
DEF COLORREF ArticleTextColor; /* color to use for article/post text */
DEF COLORREF StatusTextColor; /* Color to use for status text */
DEF COLORREF ListBackgroundColor; /* background color for group/article listings */
DEF COLORREF ArticleBackgroundColor; /* background color for article/post windows */
DEF COLORREF StatusBackgroundColor; /* background color for status windows */
DEF COLORREF CustomColors[16]; /* Custom colors definable by user in ChooseColor */
DEF HBRUSH hListBackgroundBrush;
DEF HBRUSH hArticleBackgroundBrush;
DEF HBRUSH hStatusBackgroundBrush;
DEF BOOL LimitedColor;
DEF int ReverseVideo;
DEF BOOL ThumbTrack;
DEF BOOL MailDemandLogon; /* FALSE = permanent logon
TRUE = logon on send mail */
DEF int MailForceType; /* Force Mail Type to valid value where
Less then zero means
default negotiation */
DEF int MailLog; /* True means append to log files */
DEF int PostLog; /* where XXXXLogFile is file name */
DEF char MailLogFile[MAXFILENAME];
DEF char PostLogFile[MAXFILENAME];
DEF int fmtDaysB4Mth;
DEF char fmtDateDelim[2];
#define QuoteLineInd '>'
DEF DLGPROC lpfnWinVnSaveArtDlg;
DEF DLGPROC lpfnWinVnSaveArtsDlg;
DEF DLGPROC lpfnWinVnFindDlg;
DEF DLGPROC lpfnWinVnGenericDlg;
DEF DLGPROC lpfnWinVnSubjectDlg;
DEF DLGPROC lpfnWinVnCommDlg;
DEF DLGPROC lpfnWinVnAuthDlg;
DEF DLGPROC lpfnWinVnDoListDlg;
DEF DLGPROC lpfnWinVnPersonalInfoDlg;
DEF DLGPROC lpfnWinVnMiscDlg;
DEF DLGPROC lpfnWinVnAppearanceDlg;
DEF DLGPROC lpfnEditSubClass ;
DEF DLGPROC lpfnWinVnThresholdDlg;
DEF DLGPROC lpfnWinVnLogOptDlg;
DEF DLGPROC lpfnWinVnDecodeArtsDlg;
DEF DLGPROC lpfnWinVnAttachDlg;
DEF DLGPROC lpfnWinVnEncodeDlg;
DEF DLGPROC lpfnWinVnSigFileDlg;
DEF DLGPROC lpfnWinVnExitDlg;
DEF DLGPROC lpfnWinVnMailDlg;
DEF DLGPROC lpfnWinVnSmartFilerDlg;
DEF DLGPROC lpfnWinVnSelectPathDlg;
DEF DLGPROC lpfnWinVnVersionListDlg;
DEF char *szAppName;
DEF char szAppProFile[256];
DEF char szNewsSrc[256];
DEF char SaveArtFileName[MAXFILENAME];
DEF char DecodePathName[MAXFILENAME];
DEF char DialogString[MAXDIALOGSTRING];
DEF char SubjectString[MAXDIALOGSTRING];
DEF char AddressString[MAXDIALOGSTRING];
DEF char NameString[MAXDIALOGSTRING];
DEF char CcAddress[MAXDIALOGSTRING];
DEF BOOL CcByMail;
DEF int SaveArtAppend;
DEF int ThreadFullSubject;
DEF BOOL GroupMultiSelect;
DEF TypDoc *PostDoc; /* Used to pass pointer to article being replied to. */
DEF TypDoc *MailDoc;
DEF TypDoc *FindDoc;
DEF char *NewsgroupsPtr; /* Used to pass pointer to newsgroup of new posting. */
/* For each new group detected, we create an entry in the following
* array, NewGroupTable. Each entry contains a far pointer to a
* dynamically-allocated global data structure containing a line
* containing information on this group, in the exact same format
* as used in the NetDoc.
*/
DEF void huge *huge * NewGroupTable; /* array of pointers to new group lines */
DEF HANDLE hNewGroupTable; /* Handle to the above array */
DEF int nNewGroups;
DEF HANDLE hNewGroupData;
DEF void huge *NewGroupData;
DEF unsigned int HashTableSize;
DEF unsigned int LinesInRC;
typedef struct structHier
{
HANDLE hName;
int Start;
int NumGroups;
HANDLE hNext;
}
TypHier;
#define ADD_SUBSCRIBED_END_OF_SUB 0
#define ADD_SUBSCRIBED_TOP_OF_DOC 1
#define LINE_FLAG_SET 0
#define GROUP_ACTION_SUBSCRIBE 0
#define GROUP_ACTION_UNSUBSCRIBE 1
#define GROUP_ACTION_CHECK_ACTIVE 2
#define ARTICLE_ACTION_SAVE 0
#define COMPARE 1
#define NO_COMPARE 0
#define SHOW 1
#define NO_SHOW 0
#define NO_ID NULL
#define REUSE 1
#define NO_REUSE 0
#define SELECT 1
#define DESELECT 0
#define ENABLE 1
#define DISABLE 0
#define BLOCK_ACTION_SET_ACTIVE 0
DEF int il, ic;
DEF int irow;
DEF int imemo;
DEF int ih;
#define MAXCOMMSPEEDCHARS 7
DEF int CommPortID; /* IDD_COM1 or IDD_COM2 */
DEF int CommParityID; /* IDD_7EVEN or IDD_8NONE */
DEF char pszCommSpeed[MAXCOMMSPEEDCHARS]; /* character version of comm speed */
DEF int idTimer; /* timer ID */
#define IncPtr(ptr,byint) (char far *)ptr += byint
/* the next global variable is scoped globally after the main windows is
created and is only modified at creation during MailInit in wvmail.c */
DEF struct MailCtrlStruct
{
int MailType;
int enableMail;
int enableLogout;
int enableForward;
int (*fnMlInit) (HWND hWnd), (*fnMlLogout) (HWND hWnd), (*fnMlClose) (HWND hWnd),
(*fnMlWinCreate) (HWND hWnd, TypDoc * Doc, int DocType), (*fnMlSend) (HWND hWnd, char *mBuf),
(*fnMlForward) (HWND hWnd, TypDoc * Doc);
BOOL (**MailHeaderFuncs) (TypDoc * Doc, char *Buf, long int BufLen);
}
MailCtrl;
#define MT_NONE 0
#define MT_MAPI 1
#define MT_SMTP 2
#define INACTIVE 0 /* values for CodingState */
#define DECODE_ACTIVE 1 /* values for Decoding must be */
#define DECODE_SKIPPING 2 /* a contiguous range */
#define DECODE_PROCESSING 3
#define DECODE_GET_TABLE 4
#define ATTACH_PROCESSING 10 /* Encodes must be > decodes */
#define ATTACH_POSTING 11
#define ATTACH_READFILE 12
#define CODINGTABLESIZE 64
#define BASE_BLOCK_SIZE 4096 /* base size for the huge data */
typedef struct structcoded
{
char name[MAXFILENAME]; /* original file name from begin line */
char ident[MAXINTERNALLINE]; /* based on article subject line + author */
BOOL beginFlag; /* =TRUE this block is begin of the complete binary */
BOOL endFlag; /* =TRUE this block is end of the complete binary */
int sequence; /* =-1 if unknown, or # in mult-part file */
int seqConfidence; /* confidence of sequence info */
unsigned long numLines; /* num lines read so far (for status window */
unsigned long numBytes; /* # of bytes used in this coded data block */
unsigned long maxBytes; /* max # of bytes in this coded data block */
char huge *data; /* the huge data array */
HWND hParentWnd; /* handle to group wnd that started this */
}
TypCoded;
typedef struct textBlockStruct
{
HWND hTextWnd;
BOOL IsBusy;
unsigned long numLines;
unsigned long maxLines;
unsigned long numBytes;
unsigned long maxBytes;
unsigned int maxLineLen;
char huge *text; /* big text of all lines */
unsigned long huge *offset; /* array of offsets into text array */
}
TypTextBlock;
#define MAX_DECODE_BLOCKS 256 /* max # of parts for a decode file */
#define MAX_DECODE_THREADS 75 /* max # of files in one batch decode */
typedef struct decodeThreadStruct
{
char name[MAXFILENAME]; /* original file name from begin line */
char ident[MAXINTERNALLINE]; /* thread ID based on article subject line */
char dosFileName[MAXFILENAME]; /* workable DOS file name */
char contentType[80]; /* MIME content type */
char contentDesc[80]; /* MIME content description */
char customTable[100]; /* custom coding table (if CODE_CUSTOM) */
int contentEncoding; /* MIME content-transfer-encoding */
int numBlocksWritten; /* number of blocks written to disk, so far */
int mode; /* 2nd field of begin header, don't use in DOS */
int numBlocks; /* number of coded blocks used in list */
int expectedNumBlocks; /* 0 if unknown, or a # if found in headers */
unsigned long totalBytes; /* total # of bytes for entire file */
TypCoded *codedBlockList[MAX_DECODE_BLOCKS]; /* list of ptrs to decode
objects */
TypTextBlock *statusText; /* buffers for thread status text window */
}
TypDecodeThread;
#define CODE_BASE64 1
#define CODE_UU 2
#define CODE_XX 3
#define CODE_CUSTOM 4
#define CODE_QP 5
#define CODE_UNKNOWN 6
#define CODE_NONE 0
/* these correspond to the # members in the static arrays of strings */
/* defined in wvattach.c */
#define NUM_ENCODING_TYPES 5
#define NUM_CONTENT_TYPES 10
/* coding and attachment globals */
DEF char xxMap[128], uuMap[128], base64Map[128], customMap[128];
DEF char *CodingMap[7]; /* N+1 for N coding types */
DEF int CodingState;
DEF TypCoded *currentCoded;
DEF TypTextBlock *CodingStatusText[MAX_DECODE_THREADS];
DEF int NumStatusTexts;
DEF BOOL CodingStatusVerbose;
DEF BOOL BlockCodingStatusAlwaysOnTop;
DEF BOOL DumbDecode;
DEF BOOL ExecuteDecodedFiles;
DEF BOOL KeepArticleHeaderVisible;
DEF BOOL UseSmartFiler;
DEF HWND hCodedBlockWnd; /* the block coding status window (top center of screen) */
DEF char UserCodingTable[CODINGTABLESIZE+1];
#define STATUSWIDTH (85*StatusCharWidth)
#define STATUSHEIGHT (8*StatusLineHeight)
DEF char EncodingType[MAXINTERNALLINE];
DEF int EncodingTypeNum;
DEF int AttachInNewArt;
DEF char AttachFileName[MAXFILENAME];
DEF char ContentType[MAXINTERNALLINE];
DEF char DefaultContentType[MAXINTERNALLINE];
DEF char SubjectTemplate[MAXINTERNALLINE];
DEF unsigned int ArticleSplitLength;
DEF char MIMEUUType[80]; /* experimental types used in MIME header gen */
DEF char MIMEXXType[80];
DEF char MIMECustomType[80];
DEF BOOL GenerateMIME;
DEF BOOL MIMEUsageSuggestions;
DEF BOOL ReviewAttach;
DEF BOOL BlankBeforeMIME;
DEF char MIMEBoundary[MAXINTERNALLINE];
#define FAIL -1
#define SUCCESS 0
#define ABORT 2
#define CONTINUE 3
#define MIME_VERSION "1.0"
#define ADD_TO_EDIT 1 /* used for AddEndedLineToBlock */
#define ADD_TO_POST 2
#define ADD_TO_FILE 3
#define ADD_PLAIN 0
/* Signature File globals */
DEF int EnableSig;
DEF char SigFileName[MAXFILENAME];
DEF TypTextBlock *Signature;
#define BIG_SIG_FILE 40 /* warning if sig file > this many lines */
/* Mail List globals */
DEF char MailFileName[MAXFILENAME];
DEF TypTextBlock *MailList;
DEF int MailListOrigNum;
#define MAX_MAIL_NAMES 50000; /* warning if mail file > this many lines */
/* Smart Filer globals */
DEF TypTextBlock *ExtMapSourceList;
DEF TypTextBlock *ExtMapDosList;
DEF int ExtListOrigNum;
DEF BOOL EnableExtensionConversion;
DEF unsigned int MaxFileNameLen;
DEF unsigned int MaxFileExtLen;
DEF int OnDupeName;
DEF int OnNameTooLong;
#define DUPE_AVOID_NONE 0 /* dupe avoidance list. these numbers */
#define DUPE_AVOID_NUMBER_EXT 1 /* correspond with posn in droplist */
#define DUPE_AVOID_PREPEND_NUM 2
#define DUPE_AVOID_APPEND_NUM 3
#define SHORTEN_NONE 0 /* name shotrening list. these numbers */
#define SHORTEN_TRUNCATE 1 /* correspond with posn in droplist */
#define SHORTEN_SKIP_VOWELS 2
/* bitmaps */
DEF HBITMAP DiskBitmaps[5];
DEF HBITMAP FolderBitmaps[3];
/*Printing Globals */
DEF PRINTDLG pd; /* Global structure to hold printer defaults
*/
/* macros added by JSC */
/* why is there no uitoa!? */
#define uitoa(x,s,b) ultoa((unsigned long)(x),(s),(b))
#define atoui(s) (unsigned int)atol((s))
#define Decoding (CodingState >= DECODE_ACTIVE && CodingState <= DECODE_GET_TABLE)
#define Attaching (CodingState >= ATTACH_PROCESSING && CodingState <= ATTACH_READFILE)
#define TextBlockLine(b, n) &(b->text[b->offset[n]])
#include <string.h>
#include <stdio.h> /* sprintf, etc... */
/*--- Last line of WVGLOB.H -------------------------------------------- */
@
1.58
log
@New SmartFiler stuff, and general cleanup for 92.6
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.57 1994/09/06 12:46:21 brydon Exp $
d313 2
d331 2
d530 4
a533 3
DEF unsigned int xScreen, yScreen;
DEF HANDLE hListFont; /* handle to font used in group/art lists */
DEF HANDLE hFontArtNormal; /* handle to font used in Article window - normal
d535 1
a535 1
DEF HANDLE hFontArtQuote; /* handle to font used in Article window -
d537 5
a541 5
DEF HANDLE hFontPrint; /* handle to font used for printing. */
DEF HANDLE hFontPrintB; /* handle to font used for bold printing. */
DEF HANDLE hFontPrintS; /* handle to font used for printing Subject line. */
DEF HANDLE hFontPrintI; /* handle to font used for printing Quoted lines. */
DEF HANDLE hStatusFont; /* handle to font used in status windows */
d547 1
a547 1
//DEF int FontBold;
d556 3
a558 3
DEF unsigned int LineHeight, CharWidth; /* # of window units for list font */
DEF unsigned int ArtLineHeight, ArtCharWidth; /* # of windows units for article font */
DEF unsigned int StatusLineHeight, StatusCharWidth; /* # of window units for status font */
d575 1
a575 2
DEF COLORREF CustomColors[16]; /* Custom colors definable by user in
ChooseColor */
d760 1
a808 1
DEF int numFilesDecoded;
d811 2
a812 2
DEF int numStatusTexts;
DEF TypTextBlock *codingStatusText[MAX_DECODE_THREADS];
@
1.57
log
@win32 fixes, comments changed
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.56 1994/09/02 19:16:32 martin Exp $
d23 13
d46 1
a46 1
#define MAXFILENAME 60
d152 1
d230 1
a230 1
HANDLE hFile; /* handle to file */
d506 5
a511 2
#define FAIL -1
#define SUCCESS 0
d598 22
a619 20
DEF FARPROC lpfnWinVnSaveArtDlg;
DEF FARPROC lpfnWinVnSaveArtsDlg;
DEF FARPROC lpfnWinVnFindDlg;
DEF FARPROC lpfnWinVnGenericDlg;
DEF FARPROC lpfnWinVnSubjectDlg;
DEF FARPROC lpfnWinVnCommDlg;
DEF FARPROC lpfnWinVnAuthDlg;
DEF FARPROC lpfnWinVnDoListDlg;
DEF FARPROC lpfnWinVnPersonalInfoDlg;
DEF FARPROC lpfnWinVnMiscDlg;
DEF FARPROC lpfnWinVnAppearanceDlg;
DEF FARPROC lpfnEditSubClass;
DEF FARPROC lpfnWinVnThresholdDlg;
DEF FARPROC lpfnWinVnLogOptDlg;
DEF FARPROC lpfnWinVnDecodeArtsDlg;
DEF FARPROC lpfnWinVnAttachDlg;
DEF FARPROC lpfnWinVnEncodeDlg;
DEF FARPROC lpfnWinVnSigFileDlg;
DEF FARPROC lpfnWinVnExitDlg;
DEF FARPROC lpfnWinVnMailDlg;
d632 4
a635 2
DEF int SaveArtAppend;
DEF int ThreadFullSubject;
d810 1
d813 4
a816 3
DEF HWND hCodedBlockWnd; /* the block coding status window (top center of
screen) */
DEF char UserCodingTable[CODINGTABLESIZE + 1];
a835 1
DEF BOOL Attaching; /* TRUE if currently making attachment */
d838 4
a841 2
#define ABORT 1
#define CONTINUE 0
d861 23
d894 1
@
1.56
log
@martin fixes
@
text
@d7 2
a8 2
*
* $Id: wvglob.h 1.55 1994/08/24 18:40:15 mrr Exp $
d11 12
d24 1
a24 1
#define huge far
d27 10
a36 9
#define BUFSIZE 1024
#define TEMPBUFSIZE 1240
#define MAXHEADERLINE 256
#define MAXFINDSTRING 80
#define MAXDIALOGSTRING 255
#define MAXFILENAME 60
#define MAXCHARS 80
#define MAXLINES 24
d38 6
a43 6
#define MAXCOMMLINE 1536
#define MAXINTERNALLINE 180
#define MAXOUTLINE 255
#define MAXPOSTLENGTH 60000 /* max length for a posting/mail edit window */
#define MAXBOUNDARYLEN 70 /* max length for MIME boundary */
#define MAXNEWGROUPSASK 200 /* limit of groups in newgroups dialog box */
d50 95
a144 84
typedef struct structtextselect {
int LineNum; /* Line number when selecting text -- Line Ord */
int CharNum; /* Character number when selecting text */
/* The 1st LineNum in the Doc and the 1st CharNum in the line are 0 */
} TextSelect;
typedef struct structdoc {
HANDLE hFirstBlock; /* handle to first textblock in doc. */
HANDLE hLastBlock; /* unused. */
unsigned int TotalLines; /* total # of lines in doc. */
unsigned int LongestLine; /* # of bytes in the longest line of doc */
unsigned int HeaderLines; /* total number of lines in header of doc
(incl. blank line) */
unsigned int ActiveLines; /* # of selected or otherwise active lines */
unsigned int CountedLines; /* # of counted lines, as in subscr. groups */
unsigned int BlockSize; /* # of bytes in a textblock */
unsigned int SplitSize; /* textblock split point in bytes */
HANDLE hCurAddBlock; /* hBlock to point at which to add lines. */
unsigned int AddOffset; /* offset in bytes for point to add lines */
TypLineID AddLineID; /* LineID of place to add lines. */
HANDLE hCurTopScBlock; /* hBlock of current top line of window */
unsigned int TopScOffset;
TypLineID TopScLineID;
unsigned int TopLineOrd; /* ordinal in doc of top line in window */
HANDLE hLastSeenBlock;
unsigned int LastSeenOffset;
TypLineID LastSeenLineID;
HANDLE hFindBlock; /* location of place to start next search */
unsigned int FindOffset; /* for "SearchStr" */
TypLineID FindLineID;
unsigned int FindTextOffset;
char SearchStr[MAXFINDSTRING]; /* Search string for current search */
unsigned int ScXOffset; /* # of chars offset for horizontal scroll */
unsigned int ScXChars; /* # of chars/line for current window size */
unsigned int ScYLines; /* # of lines that fit in current window */
unsigned int ScXWidth; /* current size of client area of window */
unsigned int ScYHeight;
HWND hDocWnd;
struct structdoc *ParentDoc; /* pointer to parent document */
HANDLE hParentBlock; /* points to line in parent doc */
unsigned int ParentOffset; /* that corresponds to/describes this */
TypLineID ParentLineID; /* document */
unsigned int OffsetToText;
BOOL InUse; /* TRUE if this TypDoc in use. */
int DocType; /* DOCTYPE_xxx */
BOOL TextSelected; /* Indicates text selected */
TextSelect BeginSelect; /* Line and Char where selection began */
TextSelect EndSelect; /* Line and Char where selection ended */
} TypDoc;
typedef struct structblock {
HANDLE hPrevBlock; /* handle of previous block, or 0 */
HANDLE hNextBlock; /* handle of next block in document, or 0 */
HANDLE hCurBlock; /* handle of this block */
int LWAp1; /* # of used data bytes in block, inc header */
int NumLines; /* # of lines in this block */
int NumActiveLines; /* # of active lines in this block. */
TypDoc *OwnerDoc; /* pointer to document this block is in. */
int eob; /* end-of-block; must be just before 1st line. */
/* Text lines */
/* Another EOB marker */
} TypBlock;
typedef struct structline {
int length; /* Total # of bytes in line, all-inclusive */
TypLineID LineID; /* Unique identifier for this line. */
int active; /* =1 if line should be displayed, else 0 */
/* Bytes of text */
/* Another copy of length */
} TypLine;
typedef struct structtext {
int NameLen; /* # of bytes of text */
} TypText;
typedef struct structgroup {
char Subscribed; /* =TRUE if subscribed to this group. */
char Selected; /* =TRUE if selected */
int NameLen; /* # of bytes in group name */
TypDoc *SubjDoc; /* points to doc containing subjs */
unsigned long ServerEstNum; /* est # of arts in server */
unsigned long ServerFirst; /* # of first art that server has. */
unsigned long ServerLast; /* # of last art that server has. */
unsigned long HighestPrevSeen; /* # of highest art server had in last */
d146 16
a161 14
HANDLE header_handle; /* handle to global block of header array mem */
HANDLE thread_handle; /* handle to global block of thread ind. pointers */
long int total_headers; /* total # of headers in array */
unsigned int nRanges; /* # of TypRanges describing seen arts */
/* Name of group */ /* name of group, zero-terminated */
/* Ranges of articles seen */ /* array of TypRanges, of seen articles */
} TypGroup;
typedef struct structarticle {
unsigned long Number; /* Server's number for this article */
char Seen; /* =TRUE if article seen */
char Selected; /* =TRUE if article selected */
TypDoc *ArtDoc; /* points to doc with actual article */
int NameLen; /* # of bytes in subject line */
d163 2
a164 1
} TypArticle;
d170 2
a171 2
#define HEADER_SUBJECT_LENGTH 105
#define HEADER_FROM_LENGTH 74
d176 23
a198 2
#define ARTICLE_SUBJECT_OFFSET 40
#define GROUP_NAME_OFFSET 10
d200 1
a200 41
typedef struct {
char Seen;
char Selected;
char thread_depth;
char subject[HEADER_SUBJECT_LENGTH];
unsigned long number;
unsigned int lines;
// char date[9]; JD 6/25/93
time_t date;
char from[HEADER_FROM_LENGTH];
char message_id[HEADER_MESSAGE_ID_LENGTH];
char references[HEADER_REFERENCES_LENGTH];
TypDoc * ArtDoc;
} TypHeader;
typedef TypHeader huge * header_p;
typedef long huge * thread_array;
typedef thread_array huge * thread_array_p;
typedef char huge * char_p;
typedef struct structrange {
long int First;
long int Last;
} TypRange;
/* TypMRRFile is used to describe a file; I use it because Windows */
/* doesn't provide much in the way of disk I/O support. */
typedef struct structMRRfile {
HANDLE hFile; /* handle to file */
OFSTRUCT of;
char buf[BUFSIZE]; /* my I/O buffer. */
HANDLE hthis; /* handle to this structure */
int bufidx; /* Index to next place in buf */
int bytesread; /* for reads, # of bytes read in last read */
int mode; /* mode in which to open file. */
int eofflag; /* whether we have reached EOF (read) */
} TypMRRFile;
d202 25
d229 2
a230 2
#define EDITID 1 /* ID of edit box, to identify for return values */
#define MAXMEMONAME 15 /* Number of chars in memo name */
d261 8
a268 6
DEF struct {
WORD wVirtKey;
int CtlState;
int iMessage;
WORD wRequest;
} key2scroll[NUMKEYS]
d271 8
a278 7
{VK_PRIOR, 0, WM_VSCROLL,SB_PAGEUP,
VK_NEXT, 0, WM_VSCROLL,SB_PAGEDOWN,
VK_UP, 0, WM_VSCROLL,SB_LINEUP,
VK_DOWN, 0, WM_VSCROLL,SB_LINEDOWN,
VK_LEFT, 0, WM_HSCROLL,SB_LINEUP,
VK_RIGHT, 0, WM_HSCROLL,SB_LINEDOWN
}
d294 1
a294 1
#define MAXPOSTWNDS 20
d301 7
a307 5
{HWND hWnd ;
HWND hWndEdit ;
int dirty ;
TypDoc * Doc ;
} WndEdit;
d313 2
a314 2
DEF WndEdit WndPosts[MAXPOSTWNDS];
DEF WndEdit WndMails[MAXMAILWNDS];
d326 13
a338 12
DEF int CommState; /* current state in comm FSA */
DEF BOOL CommBusy; /* =TRUE if comm line busy interacting w/ server */
DEF BOOL CommDecoding; /* =TRUE if comm line busy decoding lines from server*/
DEF WndEdit *PostEdit, *MailEdit; /* set to post/mail window during send */
DEF TypDoc *CommDoc; /* Document currently receiving lines from server */
DEF HWND CommWnd ; /* Window containing details of document currently talking to server */
DEF HWND hVerDlgList; /* Handle to info in the Version Dialog Box */
DEF char CommLineIn[MAXCOMMLINE]; /* current input line being built by FSA */
DEF char *CommLinePtr; /* pointer to next place to put char in CommLineIn */
DEF char *CommLineLWAp1; /* if we get this far, we're at end of buffer */
DEF char IgnoreCommCh; /* char to ignore when reading from server */
DEF char EOLCommCh; /* char that indicates end of line upon input */
d343 2
a344 1
DEF char CurrentGroup[MAXGROUPNAME]; /* name of group currently selected on server */
d346 1
a346 1
DEF BOOL UsingSocket; /* =TRUE if using PC/TCP rather than serial I/O */
d357 4
a360 4
DEF char NNTPPasswordEncrypted[2*MAXNNTPSIZE];
DEF BOOL AuthReqPost; /* TRUE if we may not post at all unless authenticated */
DEF BOOL AuthReqMail; /* TRUE if we may not send mail unless authenticated */
DEF BOOL Authenticated /* TRUE if we've been authenticated by NNTP server */
d364 1
a364 1
;
d368 2
a369 2
*/
DEF char AuthenticatedName[MAXNNTPSIZE];
d378 1
a378 1
DEF int ConnectAtStartup;
d382 35
a416 35
#define ST_NONE 0
#define ST_ESTABLISH_COMM 1
#define ST_GROUP_RESP 2
#define ST_XHDR_SUBJECT_START 3
#define ST_XHDR_SUBJECT_DATA 4
#define ST_IN_GROUP 5
#define ST_ARTICLE_RESP 6
#define ST_REC_ARTICLE_HEADER 65
#define ST_REC_ARTICLE 7
#define ST_POST_WAIT_PERMISSION 8
#define ST_POST_WAIT_END 9
#define ST_GROUP_REJOIN 10
#define ST_LIST_RESP 11
#define ST_LIST_GROUPLINE 12
#define ST_MAIL_WAIT_PERMISSION 13
#define ST_MAIL_WAIT_END 14
#define ST_CHECK_AUTHINFO_USERNAME 20
#define ST_CHECK_AUTHINFO_PASSWORD 21
#define ST_END_AUTHINFO 22
#define ST_XHDR_FROM_START 50
#define ST_XHDR_FROM_DATA 51
#define ST_XHDR_SUBJ_START 52
#define ST_XHDR_SUBJ_DATA 53
#define ST_XHDR_REF_START 54
#define ST_XHDR_REF_DATA 55
#define ST_XHDR_MID_START 56
#define ST_XHDR_MID_DATA 57
#define ST_XHDR_DATE_START 58
#define ST_XHDR_DATE_DATA 59
#define ST_XHDR_LINES_START 60
#define ST_XHDR_LINES_DATA 61
#define ST_XOVER_START 62
#define ST_XOVER_DATA 63
#define ST_XOVER_CHECK 64
#define ST_CLOSED_COMM 99
d420 2
a421 3
/* variables used in an ad hoc attempt to optimize updating of windows by
* the input cracking FSA.
*/
d423 4
a426 4
#define UPDATE_TITLE_FREQ 10
#define UPDATE_ART_FREQ 12
#define MAX_IMMEDIATE_UPDATE 2
#define STATUS_UPDATE_FREQ 20
d431 1
a431 1
DEF TypLineID NextLineID /* LineID to assign to next created line */
d435 1
a435 1
;
d438 4
a441 4
DEF HWND hWndConf; /* handle to NetDoc window */
DEF HWND hWndSk;
DEF HWND hDosWnd;
DEF HWND hWndDebugComm; /* handle to Debug Comm window */
d443 2
a444 2
DEF HANDLE hAccel; /* handle to main accelerator table */
DEF MSG MainMsg; /* message returned from GetMessage */
d446 1
a446 1
DEF int CommDevice; /* comm device ID, if using serial I/O */
d448 1
a448 1
DEF char str[255]; /* general-purpose string buffer */
d451 2
a452 2
DEF HCURSOR hSaveCursor; /* handle to current cursor */
DEF HCURSOR hHourGlass; /* handle to hourglass cursor */
d455 2
a456 2
DEF int X, Y; /* last cursor position */
DEF int DragMouseAction; /* mouse action for dragging */
d464 1
a464 1
DEF POINT ptCursor; /* x and y coordinates of cursor */
d468 1
a468 1
DEF char szCommString[MAXCOMMCHARS]; /* string describing serial comm port */
d482 3
a484 2
DEF int numArtsSaved;
DEF int nextBatchIndex; // for batch post/mails
d510 10
a519 8
DEF HANDLE hListFont; /* handle to font used in group/art lists */
DEF HANDLE hFontArtNormal;/* handle to font used in Article window - normal text mode. */
DEF HANDLE hFontArtQuote; /* handle to font used in Article window - comments == Italics. */
DEF HANDLE hFontPrint; /* handle to font used for printing. */
DEF HANDLE hFontPrintB; /* handle to font used for bold printing. */
DEF HANDLE hFontPrintS; /* handle to font used for printing Subject line. */
DEF HANDLE hFontPrintI; /* handle to font used for printing Quoted lines. */
DEF HANDLE hStatusFont; /* handle to font used in status windows */
d534 9
a542 9
DEF unsigned int LineHeight,CharWidth; /* # of window units for list font */
DEF unsigned int ArtLineHeight, ArtCharWidth; /* # of windows units for article font */
DEF unsigned int StatusLineHeight,StatusCharWidth; /* # of window units for status font */
DEF int TopSpace, SideSpace; /* # of window units to leave at top and side */
/* of window (for aesthetic purposes) */
DEF int ArtTopSpace, ArtSideSpace; /* # of window units to leave at top and side */
DEF int StartPen; /* Similar to TopSpace; where to start pen 1st row */
DEF int ScreenYPixels; /* used in converting points to logical units */
DEF int PrinterYPixels; /* used in converting points to logical units */
d544 14
a557 13
DEF COLORREF NetUnSubscribedColor; /* color to use for unsubscribed groups */
DEF COLORREF NetSubscribedColor; /* color to use for subscribed groups */
DEF COLORREF ArticleSeenColor; /* color to use for articles that have been seen */
DEF COLORREF ArticleUnSeenColor; /* color to use for articles that have not been seen */
DEF COLORREF ArticleTextColor; /* color to use for article/post text */
DEF COLORREF StatusTextColor; /* Color to use for status text */
DEF COLORREF ListBackgroundColor; /* background color for group/article listings */
DEF COLORREF ArticleBackgroundColor;/* background color for article/post windows */
DEF COLORREF StatusBackgroundColor; /* background color for status windows */
DEF COLORREF CustomColors[16]; /* Custom colors definable by user in ChooseColor */
DEF HBRUSH hListBackgroundBrush;
DEF HBRUSH hArticleBackgroundBrush;
DEF HBRUSH hStatusBackgroundBrush;
d563 7
a569 7
DEF BOOL MailDemandLogon; /* FALSE = permanent logon
TRUE = logon on send mail */
DEF int MailForceType; /* Force Mail Type to valid value where
Less then zero means
default negotiation */
DEF int MailLog ; /* True means append to log files */
DEF int PostLog ; /* where XXXXLogFile is file name */
d572 2
a573 2
DEF char MailLogFile[MAXFILENAME] ;
DEF char PostLogFile[MAXFILENAME] ;
d575 2
a576 2
DEF int fmtDaysB4Mth ;
DEF char fmtDateDelim[2] ;
d592 1
a592 1
DEF FARPROC lpfnEditSubClass ;
d605 1
a605 1
DEF char szNewsSrc[128];
d613 2
a614 2
DEF int SaveArtAppend;
DEF int ThreadFullSubject;
d617 1
a617 1
DEF TypDoc *PostDoc; /* Used to pass pointer to article being replied to. */
d620 1
a620 1
DEF char *NewsgroupsPtr; /* Used to pass pointer to newsgroup of new posting. */
d628 2
a629 2
DEF void huge * huge * NewGroupTable; /* array of pointers to new group lines */
DEF HANDLE hNewGroupTable; /* Handle to the above array */
d636 13
a648 29
typedef struct structHier {
HANDLE hName;
int Start;
int NumGroups;
HANDLE hNext;
} TypHier;
#define ADD_SUBSCRIBED_END_OF_SUB 0
#define ADD_SUBSCRIBED_TOP_OF_DOC 1
#define LINE_FLAG_SET 0
#define GROUP_ACTION_SUBSCRIBE 0
#define GROUP_ACTION_UNSUBSCRIBE 1
#define GROUP_ACTION_CHECK_ACTIVE 2
#define ARTICLE_ACTION_SAVE 0
#define COMPARE 1
#define NO_COMPARE 0
#define SHOW 1
#define NO_SHOW 0
#define NO_ID NULL
#define REUSE 1
#define NO_REUSE 0
#define SELECT 1
#define DESELECT 0
#define ENABLE 1
#define DISABLE 0
#define BLOCK_ACTION_SET_ACTIVE 0
d650 19
a668 1
DEF int il,ic;
d675 3
a677 3
DEF int CommPortID; /* IDD_COM1 or IDD_COM2 */
DEF int CommParityID; /* IDD_7EVEN or IDD_8NONE */
DEF char pszCommSpeed[MAXCOMMSPEEDCHARS]; /* character version of comm speed */
d679 1
a679 1
DEF int idTimer; /* timer ID */
d686 1
a686 1
DEF struct MailCtrlStruct
d688 8
a695 11
int MailType ;
int enableMail ;
int enableLogout ;
int enableForward ;
int (*fnMlInit)(HWND hWnd),
(*fnMlLogout)(HWND hWnd),
(*fnMlClose)(HWND hWnd),
(*fnMlWinCreate)(HWND hWnd,TypDoc *Doc,int DocType),
(*fnMlSend)(HWND hWnd, char *mBuf),
(*fnMlForward)(HWND hWnd, TypDoc * Doc);
BOOL (**MailHeaderFuncs)(TypDoc * Doc, char *Buf, long int BufLen) ;
d697 2
a698 1
} MailCtrl ;
d704 62
a765 55
#define INACTIVE 0 /* values for CodingState */
#define DECODE_ACTIVE 1 /* values for Decoding must be */
#define DECODE_SKIPPING 2 /* a contiguous range */
#define DECODE_PROCESSING 3
#define DECODE_GET_TABLE 4
#define ATTACH_PROCESSING 10 /* Encodes must be > decodes */
#define ATTACH_POSTING 11
#define ATTACH_READFILE 12
#define CODINGTABLESIZE 64
#define BASE_BLOCK_SIZE 4096 /* base size for the huge data */
typedef struct structcoded {
char name[MAXFILENAME]; /* original file name from begin line */
char ident[MAXINTERNALLINE]; /* based on article subject line + author */
BOOL beginFlag; /* =TRUE this block is begin of the complete binary */
BOOL endFlag; /* =TRUE this block is end of the complete binary */
int sequence; /* =-1 if unknown, or # in mult-part file */
int seqConfidence; /* confidence of sequence info */
unsigned long numLines; /* num lines read so far (for status window */
unsigned long numBytes; /* # of bytes used in this coded data block */
unsigned long maxBytes; /* max # of bytes in this coded data block */
char huge *data; /* the huge data array */
HWND hParentWnd; /* handle to group wnd that started this */
} TypCoded;
typedef struct textBlockStruct {
HWND hTextWnd;
unsigned long numLines;
unsigned long maxLines;
unsigned long numBytes;
unsigned long maxBytes;
unsigned int maxLineLen;
char huge *text; /* big text of all lines */
unsigned long huge *offset; /* array of offsets into text array */
} TypTextBlock;
#define MAX_DECODE_BLOCKS 256 /* max # of parts for a decode file */
#define MAX_DECODE_THREADS 75 /* max # of files in one batch decode */
typedef struct decodeThreadStruct {
char name[MAXFILENAME]; /* original file name from begin line */
char ident[MAXINTERNALLINE]; /* thread ID based on article subject line */
char dosFileName[MAXFILENAME];/* workable DOS file name */
char contentType[80]; /* MIME content type */
char contentDesc[80]; /* MIME content description */
char customTable[100]; /* custom coding table (if CODE_CUSTOM) */
int contentEncoding; /* MIME content-transfer-encoding */
int numBlocksWritten; /* number of blocks written to disk, so far */
int mode; /* 2nd field of begin header, don't use in DOS */
int numBlocks; /* number of coded blocks used in list */
int expectedNumBlocks; /* 0 if unknown, or a # if found in headers */
unsigned long totalBytes; /* total # of bytes for entire file */
TypCoded *codedBlockList[MAX_DECODE_BLOCKS]; /* list of ptrs to decode objects */
TypTextBlock *statusText; /* buffers for thread status text window */
} TypDecodeThread;
d782 1
a782 1
DEF char *CodingMap[7]; /* N+1 for N coding types */
d786 1
a786 1
DEF int numStatusTexts;
d791 3
a793 2
DEF HWND hCodedBlockWnd; // the block coding status window (top center of screen)
DEF char UserCodingTable[CODINGTABLESIZE+1];
d797 3
a799 3
DEF char EncodingType[MAXINTERNALLINE];
DEF int EncodingTypeNum;
DEF int AttachInNewArt;
d805 1
a805 1
DEF char MIMEUUType[80]; // experimental types used in MIME header gen
d813 1
a813 1
DEF BOOL Attaching; /* TRUE if currently making attachment */
d820 1
a820 1
#define ADD_TO_EDIT 1 /* used for AddEndedLineToBlock */
d829 1
a829 1
#define BIG_SIG_FILE 40 /* warning if sig file > this many lines */
d835 1
a835 1
#define MAX_MAIL_NAMES 50000; /* warning if mail file > this many lines */
d839 2
a840 1
DEF PRINTDLG pd; /* Global structure to hold printer defaults */
d843 2
a844 1
#define uitoa(x,s,b) ultoa((unsigned long)(x),(s),(b)) // why is there no uitoa!?
d850 1
a850 1
#include <stdio.h> /* sprintf, etc...*/
@
1.55
log
@authorization enables post/mail
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.54 1994/08/24 18:00:29 jcooper Exp $
d585 1
a585 1
DEF void far * far * NewGroupTable; /* array of pointers to new group lines */
@
1.54
log
@misc encoding/decoding changes
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.53 1994/08/23 23:15:34 martin Exp $
d28 2
a29 2
#define MAXPOSTLENGTH 60000 /* max length for a posting/mail edit window */
#define MAXBOUNDARYLEN 70 /* max length for MIME boundary */
d38 3
a40 3
int LineNum; /* Line number when selecting text -- Line Ord */
int CharNum; /* Character number when selecting text */
/* The 1st LineNum in the Doc and the 1st CharNum in the line are 0 */
d317 13
a329 1
DEF char NNTPPasswordEncrypted[2*MAXNNTPSIZE];
d444 1
a444 1
DEF int nextBatchIndex; // for batch post/mails
d453 4
a456 4
#define FAIL -1
#define SUCCESS 0
#define THREAD_COMPLETE 1
#define THREAD_INCOMPLETE 2
d499 2
a500 2
DEF int ScreenYPixels; /* used in converting points to logical units */
DEF int PrinterYPixels; /* used in converting points to logical units */
a563 2
DEF BOOL Authorized;
d609 12
a620 12
#define ARTICLE_ACTION_SAVE 0
#define COMPARE 1
#define NO_COMPARE 0
#define SHOW 1
#define NO_SHOW 0
#define NO_ID NULL
#define REUSE 1
#define NO_REUSE 0
#define SELECT 1
#define DESELECT 0
#define ENABLE 1
#define DISABLE 0
d661 3
a663 3
#define INACTIVE 0 /* values for CodingState */
#define DECODE_ACTIVE 1 /* values for Decoding must be */
#define DECODE_SKIPPING 2 /* a contiguous range */
d666 3
a668 3
#define ATTACH_PROCESSING 10 /* Encodes must be > decodes */
#define ATTACH_POSTING 11
#define ATTACH_READFILE 12
d670 1
a670 1
#define CODINGTABLESIZE 64
d672 1
a672 1
#define BASE_BLOCK_SIZE 4096 /* base size for the huge data */
d674 11
a684 11
char name[MAXFILENAME]; /* original file name from begin line */
char ident[MAXINTERNALLINE]; /* based on article subject line + author */
BOOL beginFlag; /* =TRUE this block is begin of the complete binary */
BOOL endFlag; /* =TRUE this block is end of the complete binary */
int sequence; /* =-1 if unknown, or # in mult-part file */
int seqConfidence; /* confidence of sequence info */
unsigned long numLines; /* num lines read so far (for status window */
unsigned long numBytes; /* # of bytes used in this coded data block */
unsigned long maxBytes; /* max # of bytes in this coded data block */
char huge *data; /* the huge data array */
HWND hParentWnd; /* handle to group wnd that started this */
d694 2
a695 2
char huge *text; /* big text of all lines */
unsigned long huge *offset; /* array of offsets into text array */
d698 2
a699 2
#define MAX_DECODE_BLOCKS 256 /* max # of parts for a decode file */
#define MAX_DECODE_THREADS 75 /* max # of files in one batch decode */
d701 12
a712 12
char name[MAXFILENAME]; /* original file name from begin line */
char ident[MAXINTERNALLINE]; /* thread ID based on article subject line */
char dosFileName[MAXFILENAME];/* workable DOS file name */
char contentType[80]; /* MIME content type */
char contentDesc[80]; /* MIME content description */
char customTable[100]; /* custom coding table (if CODE_CUSTOM) */
int contentEncoding; /* MIME content-transfer-encoding */
int numBlocksWritten; /* number of blocks written to disk, so far */
int mode; /* 2nd field of begin header, don't use in DOS */
int numBlocks; /* number of coded blocks used in list */
int expectedNumBlocks; /* 0 if unknown, or a # if found in headers */
unsigned long totalBytes; /* total # of bytes for entire file */
d714 1
a714 1
TypTextBlock *statusText; /* buffers for thread status text window */
d732 1
a732 1
DEF char *CodingMap[7]; /* N+1 for N coding types */
d736 1
a736 1
DEF int numStatusTexts;
d741 1
a741 1
DEF HWND hCodedBlockWnd; // the block coding status window (top center of screen)
d754 1
a754 1
DEF char MIMEUUType[80]; // experimental types used in MIME header gen
d762 1
a762 1
DEF BOOL Attaching; /* TRUE if currently making attachment */
d778 1
a778 1
#define BIG_SIG_FILE 40 /* warning if sig file > this many lines */
d784 1
a784 1
#define MAX_MAIL_NAMES 50000; /* warning if mail file > this many lines */
@
1.53
log
@new group list box & new hash table mechanism
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.52 1994/08/11 02:25:59 dumoulin Exp $
d749 1
@
1.52
log
@enabled STRICT compile and cleaned up parameter casting
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.51 1994/08/11 00:09:17 jcooper Exp dumoulin $
d571 3
a573 4
* dynamically-allocated global data structure containing:
* -- Handle to this structure (so we can deallocate later).
* -- A line containing information on this group, in the exact
* same format as used in the NetDoc.
d576 1
a576 1
DEF HANDLE hNewGroupTable; /* Handle to the above array */
d578 11
@
1.51
log
@Enhancements to Mime and article encoding/encoding
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.50 1994/08/04 05:49:30 dumoulin Exp $
d386 5
a390 5
DEF HANDLE hInst;
DEF HWND hWndConf; /* handle to NetDoc window */
DEF HWND hWndSk;
DEF HWND hDosWnd;
DEF HWND hWndDebugComm; /*handle to Debug Comm window */
@
1.50
log
@Added support for scrollable version box
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.49 1994/07/28 21:56:32 rushing Exp dumoulin $
d721 1
a721 1
DEF HWND hCodedBlockWnd;
d734 5
d743 3
@
1.49
log
@mistakenly set arts_to_retrieve as unsigned
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.48 1994/07/26 18:39:45 dumoulin Exp rushing $
d294 1
d546 1
d549 1
a549 1
DEF char szAppProFile[128];
@
1.48
log
@Added constant for the maximum number of new newsgroups
allowed before new newsgroup dialog box doesn't get called.
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.47 1994/07/26 16:10:51 gardnerd Exp dumoulin $
d428 1
a428 1
DEF unsigned int arts_to_retrieve;
@
1.47
log
@Added support for article copying to windows clipboard
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.46 1994/07/25 22:41:22 pearse_w_r Exp $
d11 3
a13 3
#ifdef WIN32
#define huge far
#endif
d28 3
a30 2
#define MAXPOSTLENGTH 60000 // max length for a posting/mail edit window
#define MAXBOUNDARYLEN 70 // max length for MIME boundary
d575 1
a575 1
DEF HANDLE hNewGroupTable; /* Handle to the above array */
d639 3
a641 3
#define INACTIVE 0 // values for CodingState
#define DECODE_ACTIVE 1 // values for Decoding must be
#define DECODE_SKIPPING 2 // a contiguous range
d644 1
a644 1
#define ATTACH_PROCESSING 10 // Encodes must be > decodes
d703 2
a704 1
// these correspond to the # members in the static arrays of strings defined in wvattach.c
d708 1
a708 1
// coding and attachment globals
d710 1
a710 1
DEF char *CodingMap[7]; // N+1 for N coding types
d734 1
a734 1
DEF BOOL Attaching; // == TRUE if currently making attachment
d738 1
a738 1
#define ADD_TO_EDIT 1 // used for AddEndedLineToBlock
d743 1
a743 1
// Signature File globals
d747 1
a747 1
#define BIG_SIG_FILE 40 // warning if sig file > this many lines
d749 1
a749 1
// Mail List globals
d753 1
a753 1
#define MAX_MAIL_NAMES 50000; // warning if mail file > this many lines
d755 1
a755 1
// Printing Globals
d759 1
a759 1
// macros added by JSC
d766 1
a766 1
#include <stdio.h> // sprintf, etc...
@
1.46
log
@ShowUnreadOnly option
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.45 1994/07/25 18:51:48 jcooper Exp $
d32 1
a32 1
#include <commdlg.h>
d36 6
d81 3
d139 1
a139 1
/* arrays require this. */
d146 1
a146 1
d148 1
a148 1
#define ARTICLE_SUBJECT_OFFSET 40
d150 1
a150 1
d435 1
a435 1
DEF int ShowReadArticles;
d439 1
a439 1
#define FAIL -1
d591 1
a591 1
#define NO_ID NULL
d611 1
a611 1
DEF int idTimer; /* timer ID */
@
1.45
log
@execution of decoded files
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.44 1994/06/30 16:37:04 dumoulin Exp $
d428 1
@
1.44
log
@Defined global storage for the Print Dialog (pd) function
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.43 1994/06/08 21:01:45 gardnerd Exp dumoulin $
d418 1
a418 1
DEF int arts_to_retrieve;
d706 1
@
1.43
log
@more scrolling changes...
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.42 1994/06/06 22:06:13 gardnerd Exp $
d32 1
d741 4
@
1.42
log
@horizontal scrolling support
@
text
@d8 1
a8 1
* $Id: $
d137 3
a139 2
/* Offset used to calculate LongestLine for an article subject */
#define HEADER_SUBJECT_OFFSET 40
@
1.41
log
@fix subscribed-count bug
@
text
@d8 1
a8 128
* $Id: wvglob.h 1.40 1994/06/01 19:00:00 gardnerd Exp $
* $Log: wvglob.h $
* Revision 1.40 1994/06/01 19:00:00 gardnerd
* support for horizontal scrolling
*
* Revision 1.39 1994/05/23 19:51:51 rushing
* NNTPPort becomes NNTPService, and it's a string.
*
* Revision 1.38 1994/05/23 18:37:00 jcooper
* new attach code, session [dis]connect
*
* Revision 1.37 1994/05/02 20:32:55 rushing
* changes from jody glasser
*
* Revision 1.36 1994/03/01 19:10:19 rushing
* ThreadFullSubject option added
*
* Revision 1.35 1994/02/24 21:28:49 jcoop
* jcoop changes
*
* Revision 1.34 1994/02/16 20:59:17 rushing
* Added .ini param to force use of XHDR over XOVER
*
* Revision 1.33 1994/02/04 02:19:12 rushing
* added GenSockDLL .ini param
*
* Revision 1.32 1994/01/24 17:39:47 jcoop
* 90.2 changes
*
* Revision 1.31 1994/01/17 21:54:58 jcoop
* New entries for colors/fonts, sig files, attachments, decoding
*
* Revision 1.30 1994/01/12 19:25:59 mrr
* mrr mods 4
*
* Revision 1.29 1994/01/05 22:36:43 mrr
* BLOCK_SIZE=4096
*
* Revision 1.28 1993/12/08 20:21:15 dumoulin
* Added support for using Shift-Mouse-Left inplace of Mouse-Middle and
* support for dragging mouse to set article Seen flag
*
* Revision 1.27 1993/12/08 01:29:07 rushing
* new version box and cr lf consistency
*
* Revision 1.26 1993/08/25 18:55:19 mbretherton
* MRB merge, mail & post logging
*
*
* remove vRef (for Macintosh only)
* include Mail and Post Log variables
*
* Revision 1.25 1993/08/18 21:49:21 rushing
* more 16-bit article number fixes.
*
* Revision 1.24 1993/08/17 21:48:44 dumoulin
* Added variable for Mouse Dragging
*
* Revision 1.23 1993/08/05 20:06:07 jcoop
* save multiple articles changes by jcoop@@oakb2s01.apl.com (John S Cooper)
*
* Revision 1.22 1993/07/13 16:03:04 riordan
* MRR mods
*
* Revision 1.21 1993/07/09 19:13:36 rushing
* alignment problem. Sigh.
*
* Revision 1.20 1993/07/06 21:09:09 cnolan
* win32 support
*
* Revision 1.19 1993/06/28 17:52:17 rushing
* fixed compiler warnings
*
* Revision 1.18 1993/06/25 20:27:10 dumoulin
* Added StringDate to support POSIX standard numeric dates
*
* Revision 1.17 1993/06/22 19:08:56 rushing
* mail force type selection via dialog
*
* Revision 1.16 1993/06/22 16:43:58 bretherton
* remove mail type MT_POP add enable forward menus seperate from mail
*
* Revision 1.15 1993/06/22 16:14:21 rushing
* unsigned long for article number
*
* Revision 1.14 1993/06/14 17:05:16 rushing
* made the MAILLEN define larger. 48 -> 255
*
* Revision 1.13 1993/06/11 00:11:26 rushing
* second merge from Matt Bretherton sources
*
* Revision 1.12 1993/06/10 18:25:40 rushing
* XOVER support and did_list variable (newsrc&dolist problem fixed)
*
* Revision 1.11 1993/06/01 18:23:17 rushing
* moved header funcs to headarry.c
*
* Revision 1.10 1993/05/29 03:32:30 rushing
* threading support
*
* Revision 1.9 1993/05/28 17:32:11 rushing
* made the #defines for ST_XHDR_SUBJ jive with the other new ones.
*
* Revision 1.8 1993/05/28 17:18:00 rushing
* Added Misc... option to enable threading
*
* Revision 1.7 1993/05/24 23:57:22 rushing
* rot13 merge (MRB)
*
* Revision 1.6 1993/05/18 22:10:45 rushing
* smtp support
*
* Revision 1.5 1993/05/13 20:00:38 rushing
* fancy 'from' in group window
*
* Revision 1.4 1993/05/13 16:17:45 rushing
* article fetch limit support
*
* Revision 1.3 1993/03/30 20:49:30 DUMOULIN
* MAPI
*
* Revision 1.2 1993/03/30 17:08:12 rushing
* Added global handle for printer font.
*
* Revision 1.1 1993/02/16 20:54:42 rushing
* Initial revision
*
*
d136 4
a139 1
@
1.40
log
@support for horizontal scrolling
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.39 1994/05/23 19:51:51 rushing Exp $
d10 3
d170 1
@
1.39
log
@NNTPPort becomes NNTPService, and it's a string.
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.38 1994/05/23 18:37:00 jcooper Exp rushing $
d10 3
d162 2
a163 1
unsigned int TotalLines; /* total # of lines in doc. */
d184 1
d334 1
a334 1
#define NUMKEYS 4
d346 4
a349 2
VK_UP, 1, WM_VSCROLL,SB_LINEUP,
VK_DOWN, 1, WM_VSCROLL,SB_LINEDOWN
@
1.38
log
@new attach code, session [dis]connect
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.37 1994/05/02 20:32:55 rushing Exp $
d10 3
d414 1
a414 1
DEF int NNTPPort;
@
1.37
log
@changes from jody glasser
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.36 1994/03/01 19:10:19 rushing Exp rushing $
d10 3
d351 2
d423 1
d694 2
d800 4
d819 3
a821 2
DEF int EncodingType;
DEF int WhenToAttach; // == IDD_ATTACH_NOW or _NEXT
d824 1
@
1.36
log
@ThreadFullSubject option added
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.35 1994/02/24 21:28:49 jcoop Exp rushing $
d10 3
d651 1
@
1.35
log
@jcoop changes
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.34 1994/02/16 20:59:17 rushing Exp $
d10 3
d647 1
@
1.34
log
@Added .ini param to force use of XHDR over XOVER
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.33 1994/02/04 02:19:12 rushing Exp rushing $
d10 3
d128 1
a128 1
#define MAXDIALOGSTRING 120
d407 1
d422 1
d519 2
d569 1
d587 1
d614 1
d629 1
d765 1
a765 1
char codingTable[100]; /* coding table for blocks in this thread */
d776 7
a782 7
#define ENCODE_BASE64 1
#define ENCODE_UU 2
#define ENCODE_XX 3
#define ENCODE_CUSTOM 4
#define ENCODE_QP 5
#define ENCODE_UNKNOWN 6
#define ENCODE_NONE 0
d785 2
d796 2
d821 6
@
1.33
log
@added GenSockDLL .ini param
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.32 1994/01/24 17:39:47 jcoop Exp rushing $
d10 3
d393 1
@
1.32
log
@90.2 changes
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.31 1994/01/17 21:54:58 jcoop Exp $
d10 3
d403 1
@
1.31
log
@New entries for colors/fonts, sig files, attachments, decoding
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.31 1994/01/17 21:41:20 jcoop Exp $
d10 3
d369 1
d504 2
d801 1
@
1.30
log
@mrr mods 4
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.29 1994/01/05 22:36:43 mrr Exp $
d10 3
d113 1
d118 10
a272 7
#define MAXFILENAME 60
#define MAXCHARS 80
#define MAXLINES 24
/* this has been increased for XOVER - some lines are *very* long */
#define MAXCOMMLINE 1536
#define MAXINTERNALLINE 180
#define MAXOUTLINE 255
a274 1
a300 1
d333 2
a334 2
#define MAXPOSTWNDS 4
#define MAXMAILWNDS 4
d365 1
a374 1
DEF BOOL SaveNewsrc; /* =TRUE iff we write NEWSRC upon exit */
d443 2
d504 5
d521 3
a523 3
DEF HANDLE hFont; /* handle to font used in all windows except article */
DEF HANDLE hFontArtNormal; /* handle to font used in Article window - normal text mode. */
DEF HANDLE hFontArtQuote; /* handle to font used in Article window - comments == Italics. */
d528 1
d530 1
a530 2
DEF int FontSize;
d533 4
a536 2
DEF int FontBold;
DEF char FontFace[32];
d538 1
d540 2
d543 1
a543 1
DEF unsigned int LineHeight,CharWidth; /* # of window units for current font */
d545 1
d549 16
a565 3
DEF DWORD OldTextColor, OldBkColor;
DEF DWORD NetUnSubscribedColor; /* color to use for unsubscribed groups */
DEF DWORD GroupSeenColor; /* color to use for articles that have been seen */
d600 5
d613 1
d645 10
a656 10
#define ARTICLE_ACTION_SAVE 0
#define COMPARE 1
#define NO_COMPARE 0
#define SHOW 1
#define NO_SHOW 0
#define REUSE 1
#define NO_REUSE 0
#define SELECT 1
#define DESELECT 0
d694 103
@
1.29
log
@BLOCK_SIZE=4096
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.28 1993/12/08 20:21:15 dumoulin Exp mrr $
d10 3
d129 1
a129 1
TypLineID AddLineID; /* LineID of point to add lines. */
d133 1
a133 1
unsigned int TopLineOrd; /* ordinal in doc of line line in window */
d162 1
d172 1
d182 8
a189 8
char Subscribed; /* =TRUE if subscribed to this group. */
char Selected; /* =TRUE if selected */
int NameLen; /* # of bytes in group name */
TypDoc *SubjDoc; /* points to doc containing subjs */
unsigned long ServerEstNum; /* est # of arts in server */
unsigned long ServerFirst; /* # of first art that server has. */
unsigned long ServerLast; /* # of last art that server has. */
unsigned long HighestPrevSeen; /* # of highest art server had in last */
d191 4
a194 4
HANDLE header_handle; /* handle to global block of header array mem */
HANDLE thread_handle; /* handle to global block of thread ind. pointers */
long int total_headers; /* total # of headers in array */
unsigned int nRanges; /* # of TypRanges describing seen arts */
d200 5
a204 5
unsigned long Number; /* Server's number for this article */
char Seen; /* =TRUE if article seen */
char Selected; /* =TRUE if article selected */
TypDoc *ArtDoc; /* points to doc with actual article */
int NameLen; /* # of bytes in subject line */
d212 4
a215 4
#define HEADER_SUBJECT_LENGTH 105
#define HEADER_FROM_LENGTH 74
#define HEADER_MESSAGE_ID_LENGTH 30
#define HEADER_REFERENCES_LENGTH 30
d288 1
d408 1
a408 1
#define ST_MAIL_WAIT_END 14
d411 16
a426 16
#define ST_END_AUTHINFO 22
#define ST_XHDR_FROM_START 50
#define ST_XHDR_FROM_DATA 51
#define ST_XHDR_SUBJ_START 52
#define ST_XHDR_SUBJ_DATA 53
#define ST_XHDR_REF_START 54
#define ST_XHDR_REF_DATA 55
#define ST_XHDR_MID_START 56
#define ST_XHDR_MID_DATA 57
#define ST_XHDR_DATE_START 58
#define ST_XHDR_DATE_DATA 59
#define ST_XHDR_LINES_START 60
#define ST_XHDR_LINES_DATA 61
#define ST_XOVER_START 62
#define ST_XOVER_DATA 63
#define ST_XOVER_CHECK 64
d451 1
d492 4
a495 1
DEF int numArtsSaved;
d541 1
a541 1
Less then zero means
d606 3
d610 9
a618 9
#define ARTICLE_ACTION_SAVE 0
#define COMPARE 1
#define NO_COMPARE 0
#define SHOW 1
#define NO_SHOW 0
#define REUSE 1
#define NO_REUSE 0
#define SELECT 1
#define DESELECT 0
d645 2
a646 2
(*fnMlLogout)(HWND hWnd),
(*fnMlClose)(HWND hWnd),
@
1.28
log
@Added support for using Shift-Mouse-Left inplace of Mouse-Middle and
support for dragging mouse to set article Seen flag
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.27 1993/12/08 01:29:07 rushing Exp dumoulin $
d10 4
d269 1
a269 1
#define BLOCK_SIZE 1024
@
1.27
log
@new version box and cr lf consistency
@
text
@d8 1
a8 1
* $Id: wvglob.h 1.26 1993/08/25 18:55:19 mbretherton Exp rushing $
d10 3
d460 2
@
1.26
log
@MRB merge, mail & post logging
@
text
@a0 1
a5 1
d8 1
a8 1
* $Id: wvglob.h 1.25 1993/08/18 21:49:21 rushing Exp $
d10 3
@
1.25
log
@more 16-bit article number fixes.
@
text
@d10 1
a10 1
* $Id: wvglob.h 1.24 1993/08/17 21:48:44 dumoulin Exp rushing $
d12 7
d246 1
d319 11
a329 6
DEF TypDoc PostingDocs[MAXPOSTWNDS];
DEF TypDoc MailDocs[MAXMAILWNDS];
DEF HWND hWndPosts[MAXPOSTWNDS];
DEF HWND hWndMails[MAXMAILWNDS];
DEF HWND hWndPostEdits[MAXPOSTWNDS];
DEF HWND hWndMailEdits[MAXMAILWNDS];
d331 3
d347 1
d523 7
d548 1
a555 1
#define MAXFILENAME 60
a560 1
DEF int SaveArtvRef; /* volume ref num used only by Mac */
@
1.24
log
@Added variable for Mouse Dragging
@
text
@d10 1
a10 1
* $Id: wvglob.h 1.23 1993/08/05 20:06:07 jcoop Exp dumoulin $
d12 3
d162 15
a176 15
char Subscribed; /* =TRUE if subscribed to this group. */
char Selected; /* =TRUE if selected */
int NameLen; /* # of bytes in group name */
TypDoc *SubjDoc; /* points to doc containing subjs */
unsigned int ServerEstNum; /* est # of arts in server */
long int ServerFirst; /* # of first art that server has. */
long int ServerLast; /* # of last art that server has. */
long int HighestPrevSeen; /* # of highest art server had in last */
/* session, from "s<num>" newsrc field */
HANDLE header_handle; /* handle to global block of header array mem */
HANDLE thread_handle; /* handle to global block of thread ind. pointers */
long int total_headers; /* total # of headers in array */
unsigned int nRanges; /* # of TypRanges describing seen arts */
/* Name of group */ /* name of group, zero-terminated */
/* Ranges of articles seen */ /* array of TypRanges, of seen articles */
d180 6
a185 6
long int Number; /* Server's number for this article */
char Seen; /* =TRUE if article seen */
char Selected; /* =TRUE if article selected */
TypDoc *ArtDoc; /* points to doc with actual article */
int NameLen; /* # of bytes in subject line */
/* Subject line of article */
@
1.23
log
@save multiple articles changes by jcoop@@oakb2s01.apl.com (John S Cooper)
@
text
@d1 7
d10 1
a10 1
* $Id: wvglob.h 1.22 1993/07/13 16:03:04 riordan Exp $
d12 3
a83 6
/*--- This is WVGLOB.H ------------------------------------------- */
/* WVGLOB.H contains all the global types and variables for WinVN. */
/* Stylistically, this should probably be separated into several */
/* header files, but this is what you've got for now. */
/* cf WVDOC.C -- it describes some of these structures. */
d101 2
a102 1
unsigned int HeaderLines; /* total number of lines in header of doc (incl. blank line) */
d189 5
d198 1
a198 1
char subject[105];
d203 3
a205 3
char from[74];
char message_id[30];
char references[30];
a311 1
#ifndef MAC
a313 6
#else
DEF TEHandle TEHPosts[MAXPOSTWNDS];
DEF TEHandle TEHCurrent;
DEF ControlHandle vScroll;
DEF int linesInFolder;
#endif
d423 1
a423 1
DEF char str[255]; /* general-purpose string buffer */
d426 2
a427 2
DEF HCURSOR hSaveCursor; /* handle to current cursor */
DEF HCURSOR hHourGlass; /* handle to hourglass cursor */
d430 2
a431 1
DEF int X, Y; /* last cursor position */
d433 3
d437 1
a437 1
DEF POINT ptCursor; /* x and y coordinates of cursor */
@
1.22
log
@MRR mods
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.21 1993/07/09 19:13:36 rushing Exp $
d5 3
d447 2
d503 1
d549 1
a549 1
#define LINE_FLAG_SET 0
d553 10
@
1.21
log
@alignment problem. Sigh.
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.20 1993/07/06 21:09:09 cnolan Exp $
d5 3
d343 2
d368 4
a371 1
#define ST_MAIL_WAIT_END 14
@
1.20
log
@win32 support
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.19 1993/06/28 17:52:17 rushing Exp $
d5 3
d182 1
a186 1
char subject[105];
@
1.19
log
@fixed compiler warnings
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.18 1993/06/25 20:27:10 dumoulin Exp rushing $
d5 3
d70 4
@
1.18
log
@Added StringDate to support POSIX standard numeric dates
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.17 1993/06/22 19:08:56 rushing Exp dumoulin $
d5 3
d150 1
a150 1
int nRanges; /* # of TypRanges describing seen arts */
d424 1
a424 1
DEF int article_threshold;
d456 2
a457 2
DEF int LineHeight,CharWidth; /* # of window units for current font */
DEF int ArtLineHeight, ArtCharWidth; /* # of windows units for article font */
@
1.17
log
@mail force type selection via dialog
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.16 1993/06/22 16:43:58 bretherton Exp rushing $
d5 3
d70 2
d163 1
a163 1
/* (+ 1 1 1 4 2 7 102 74 30 30 4) => 256 */
d171 3
a173 2
char date[7];
char subject[102];
@
1.16
log
@remove mail type MT_POP add enable forward menus seperate from mail
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.15 1993/06/22 16:14:21 rushing Exp $
d5 3
d462 1
a462 1
Less then or equal to zero means
@
1.15
log
@unsigned long for article number
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.14 1993/06/14 17:05:16 rushing Exp rushing $
d5 3
d541 1
d554 1
a554 2
#define MT_POP 2
#define MT_SMTP 3
@
1.14
log
@made the MAILLEN define larger. 48 -> 255
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.13 1993/06/11 00:11:26 rushing Exp rushing $
d5 3
d152 1
a152 1
/* (+ 1 1 1 2 2 6 105 74 30 30 4) => 256 */
d158 1
a158 1
unsigned int number;
d161 1
a161 1
char subject[104];
@
1.13
log
@second merge from Matt Bretherton sources
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.12 1993/06/10 18:25:40 rushing Exp $
d5 3
d313 1
a313 1
#define MAILLEN 48
@
1.12
log
@XOVER support and did_list variable (newsrc&dolist problem fixed)
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.11 1993/06/01 18:23:17 rushing Exp rushing $
d5 3
d447 9
d467 1
d469 1
d529 11
a539 8
int MailType ;
int enableMail ;
int (*fnMlInit)(HWND hWnd),
(*fnMlLogout)(HWND hWnd),
(*fnMlWinCreate)(HWND hWnd,TypDoc *Doc,int DocType),
(*fnMlSend)(HWND hWnd, char *mBuf),
(*fnMlForward)(HWND hWnd, TypDoc * Doc);
BOOL (**MailHeaderFuncs)(TypDoc * Doc, char *Buf, long int BufLen) ;
@
1.11
log
@moved header funcs to headarry.c
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.10 1993/05/29 03:32:30 rushing Exp rushing $
d5 3
d151 2
a152 2
char date[6];
char subject[105];
d188 2
a189 1
#define MAXCOMMLINE 140
d300 1
d342 3
d399 1
@
1.10
log
@threading support
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.9 1993/05/28 17:32:11 rushing Exp rushing $
d5 3
d138 4
a141 2
/* this can now obsolete the article struct */
/* #(++,10,#(++,6,#(++,4,#(++,#(++,#(++, 101, 75),30),30)))) */
d145 1
d150 1
a150 1
char from[75];
d159 4
@
1.9
log
@made the #defines for ST_XHDR_SUBJ jive with the other new ones.
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.8 1993/05/28 17:18:00 rushing Exp rushing $
d5 3
a13 1
*
d109 13
a121 12
char Subscribed; /* =TRUE if subscribed to this group. */
char Selected; /* =TRUE if selected */
int NameLen; /* # of bytes in group name */
TypDoc *SubjDoc; /* points to doc containing subjs */
unsigned int ServerEstNum; /* est # of arts in server */
long int ServerFirst; /* # of first art that server has. */
long int ServerLast; /* # of last art that server has. */
long int HighestPrevSeen; /* # of highest art server had in last */
/* session, from "s<num>" newsrc field */
HANDLE header_handle;
long int total_headers; /* total # of headers in array */
int nRanges; /* # of TypRanges describing seen arts */
d149 4
@
1.8
log
@Added Misc... option to enable threading
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.7 1993/05/24 23:57:22 rushing Exp rushing $
d5 3
d296 2
a297 2
#define ST_XHDR_RESP 3
#define ST_XHDR_SUBJ 4
@
1.7
log
@rot13 merge (MRB)
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.6 1993/05/18 22:10:45 rushing Exp $
d5 2
d8 1
d274 3
@
1.6
log
@smtp support
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.5 1993/05/13 20:00:38 rushing Exp rushing $
d5 4
d44 1
d381 2
a382 1
DEF HANDLE hFontArt; /* handle to font used in Article window. */
d409 1
@
1.5
log
@fancy 'from' in group window
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.4 1993/05/13 16:17:45 rushing Exp rushing $
d5 3
d32 1
a32 1
#define MAXSUBJECTSTRING 120
d269 1
d406 1
a406 1
DEF FARPROC lpfnWinVnSubjectDlg;
d422 5
a426 3
DEF char SubjectString[MAXSUBJECTSTRING];
DEF char AddressString[MAXSUBJECTSTRING];
DEF char NameString[MAXSUBJECTSTRING];DEF int SaveArtvRef; /* volume ref num used only by Mac */
d473 8
a480 7
int MailType ;
int enableMail ;
int (*fnMlInit)(HWND hWnd),
(*fnMlLogout)(HWND hWnd),
(*fnMlWinCreate)(HWND hWnd,TypDoc *Doc,int DocType),
(*fnMlSend)(HWND hWnd, char *mBuf) ;
BOOL (**MailHeaderFuncs)(TypDoc * Doc, char *Buf, long int BufLen) ;
d485 2
a486 1
#define MT_POP 2
@
1.4
log
@article fetch limit support
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.3 1993/03/30 20:49:30 DUMOULIN Exp rushing $
d5 3
d368 1
@
1.3
log
@MAPI
@
text
@d3 1
a3 1
* $Id: wvglob.h 1.2 1993/03/30 17:08:12 rushing Exp $
d5 3
d353 2
d405 1
@
1.2
log
@Added global handle for printer font.
@
text
@d3 5
a7 2
* $Id: wvglob.h%v 1.1 1993/02/16 20:54:42 rushing Exp rushing $
* $Log: wvglob.h%v $
d296 1
a296 1
d409 2
a410 1
DEF int SaveArtvRef; /* volume ref num used only by Mac */
d451 18
@
1.1
log
@Initial revision
@
text
@d3 4
a6 2
* $Id$
* $Log$
d8 1
d364 1
@